The present invention relates to an architecture for a hierarchical folder structure in hand-held computers such as a Handheld PC or a Palm-size PC. More particularly, one aspect of the present invention relates to a message store system that has a hierarchical folder structure. Another aspect of the present invention relates to a message store system having a hierarchical folder structure that is backward compatible with previous more primitive versions of the hand-held computer""s message store.
As computers continue to develop, people are becoming more reliant on them for both conducting business and managing their everyday affairs. This ever-increasing acceptance is particularly true for hand-held computers, which are commonly used as to execute personal information manager software (PIM). PIM functions typically include e-mail, task list, calendar, and contact information. The data in most hand-held devices can be synchronized with PIM data that is stored on a server computer or a desktop personal computer.
A particularly useful feature of hand-held computers is to include e-mail client software for receiving and managing electronic messages, or e-mail. Furthermore, more and more users have multiple e-mail accounts with different services. For example, a user might have an e-mail account with his or her employer, a personal e-mail account with a commercial service, and an e-mail account for a home-based business.
Electronic messages, or e-mails, are typically stored in a message store. A message store system usually permits a user to organize his or her messages into folders such as those named Inbox, Outbox, and Deleted Items. Additionally, most message stores allow users to define their own folders, so that users can organize and manage their messages in a way that suits their individual needs.
One problem with the current architecture for message stores on Handheld and Palm-size PCs is that they provide only 8-bits from a set of flags to identify mail folders, which limits the number of folders on the Handheld and Palm-size PCs to 256. However, most e-mail severs do not have a similar limitation, allowing a user to have more than 256 folders. If the user creates more than 256 folders in such a server mail store, not all of the user""s folders will be synchronized between the server""s and the hand-held""s message store.
Another problem is that current message stores on hand-held computers contain only a flat folder structure. In other words, the message store does not allow a parent/child relationship between folders. Nor does the message store allow different sets of folders. Accordingly, current message stores typically place all electronic messages or e-mail that it receives in the same flat folder structure or set of folders. Currently messages coming from different services are placed in the same set of folders.
Yet another problem arises because even if a hand-held computer was designed with a message store that addressed these problems, many of the programs used on the hand-held computer are written to interface with a flat-folder structure as well as other features of the previously existing mail store. This limitation would prevent many users from upgrading the message store system on their hand-held computers. If they did upgrade their hand-held message store, they would be required to also upgrade the other programs on their hand-held computer that interface with the message store.
In general terms, the present invention addresses these problems by providing a hierarchical folder structure for the mail store architecture. Such a structure permits the creation of a folder hierarchy for each message service with which the user has an account. As a result, the hand-held message store can organize messages received from different services. Another aspect of the present invention also provides backward compatibility so that a hand-held computer embodying the present invention can be used by applications written to communicate with the earlier versions of the message store.
One aspect of the present invention relates to a computer-readable medium in a hand-held computer apparatus. The computer readable medium contains a message store configured to include a hierarchical structure of mail folders. The hierarchical structure of mail folders includes a plurality of folders. The computer-readable medium has stored thereon a data structure where a first folder data structure contains data representing a first folder ID. The first folder ID corresponds to a first folder. A second folder data structure contains data representing a second folder ID. The second folder ID corresponds to a second folder. The first folder ID is a parent of the second folder ID within the hierarchical structure of mail folders.
Another aspect of the present invention includes a hand-held computer apparatus having a folder module that creates a hierarchical structure of folders, including at least first and second folders. The first folder is a parent of the second folder. Each folder has a folder data structure, and each folder data structure includes a folder ID field and a folder name field. A message module creates a database of messages. Each message has a message data structure, and each message data structure has a folder ID field corresponding to data that identifies a folder in the hierarchical structure.
Yet another aspect of the present invention is a method of operating a hand-held computer. The hand-held computer communicates with a server, and the server contains an object store. The method creates a hierarchical structure of folders, including at least first and second folders, the first folder being a parent of the second folder, each folder having a folder data structure, each folder data structure including a field corresponding to a folder ID and a folder name. Additionally, a database of folders is created; and a database of messages is created, each message has a message data structure, having a field corresponding to a folder ID that identifies a folder in the hierarchical folder structure.